package com.lbs.filter;


import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;

/**
 * @author Administrator
 * @date 2021/5/19 16:30
 * @description
 **/
@WebFilter(urlPatterns = "/*")
public class LoginFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {

        HttpServletRequest request = (HttpServletRequest) servletRequest;

        HttpServletResponse response = (HttpServletResponse) servletResponse;

        HttpSession session = request.getSession();

        Object username = session.getAttribute("admin");

        String uri = request.getRequestURI();

        String fileName = uri.substring(uri.lastIndexOf("/"));

        if (fileName.equals("/login.jsp") || fileName.equals("/login")) {
            filterChain.doFilter(request, response);
        } else {
            if (username != null && username != "") {
                filterChain.doFilter(request, response);
            } else {
                response.getWriter().print("<script>alert('请登录后访问！');location.href='login.jsp'</script>");
            }
        }

    }

    @Override
    public void destroy() {

    }
}
